<!--

    Copyright (c) 1997, 2018 Oracle and/or its affiliates. All rights reserved.

    This program and the accompanying materials are made available under the
    terms of the Eclipse Public License v. 2.0, which is available at
    http://www.eclipse.org/legal/epl-2.0.

    This Source Code may also be made available under the following Secondary
    Licenses when the conditions for such availability set forth in the
    Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
    version 2 with the GNU Classpath Exception, which is available at
    https://www.gnu.org/software/classpath/license.html.

    SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0

-->

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:ez="http://java.sun.com/jsf/composite/composite">
<h:head>
<title>attachedconverter</title>
</h:head>

<h:body>

  <ui:debug hotkey="p" rendered="true"/>

<h:form id="form">
   
    <p>
        Maps Conveter to inputText within composite/converter1.xhtml using
        only the name attribute.
    </p>
    <ez:converter1 id="converter1">
        <f:converter for="input" binding="#{compositeBean.converter}"/>
    </ez:converter1>
    <h:commandButton id="s1" value="Submit"/>

</h:form>

<h:form id="form2">
    <p>
        Maps Converter to inputText within composite/converter2.xhtml using
        name and target attributes.
    </p>
    <ez:converter2 id="converter2">
        <f:converter for="input" binding="#{compositeBean.converter}"/>
    </ez:converter2>
    <h:commandButton id="s2" value="Submit"/>

</h:form>

<h:form id="form3">
    <p>
        Maps Converter to a inputText within a composite/converter1.xhtml
        which is nested within composite/converter3.xhtml. Using the same ID
        in the nesting.
    </p>
    <ez:converter3 id="converter3">
        <f:converter for="input" binding="#{compositeBean.converter}"/>
    </ez:converter3>
    <h:commandButton id="s3" value="Submit"/>

</h:form>

<h:form id="form4">
    <p>
        Ensure converters are properly re-targeted when the
        target of the converter is nested within another naming
        container.  Note that the value of the 'for' attribute doesn't
        mimic the NamingContainer hierarchy, that's handled by the
        'targets' attribute within the composite:implementation section
        of converter4.xhtml.
    </p>
    <ez:converter4 id="converter4">
        <f:converter for="input" binding="#{compositeBean.converter}"/>
    </ez:converter4>
    <h:commandButton id="s4" value="Submit"/>
</h:form>


<h:form id="cf">
    <p />
    <h:commandButton id="clear" value="Clear Messages"/>
</h:form>
<h:messages id="messages"/>
</h:body>

</html>
